home *** CD-ROM | disk | FTP | other *** search
/ Internet Surfer 2.0 / Internet Surfer 2.0 (Wayzata Technology) (1996).iso / pc / text / mac / faqs.018 < prev    next >
Text File  |  1996-02-12  |  29KB  |  571 lines

  1. Frequently Asked Questions (FAQS);faqs.018
  2.  
  3.  
  4.  
  5. A third source of information is the monthly Virus Bulletin, published
  6. in the UK.  Among other things, it gives detailed technical
  7. information on viruses (see also A9 below).  Unfortunately, it is very
  8. expensive (the subscription price is $395 per year).  US subscriptions
  9. can be obtained by calling 203-431-8720 or writing to 590 Danbury
  10. Road, Ridgefield, CT 06877; for European subscriptions, the number is
  11. +44-235-555139 and the address is: The Quadrant, Abingdon, OX14 3YS,
  12. England.
  13.  
  14. A fourth good source of information on DOS viruses is the "Computer
  15. Viruses" report of the National/International Computer Security
  16. Association.  This is updated regularly, and is fairly complete.
  17. Copies cost approximately $75, and can be ordered by calling +1-
  18. 202-244-7875.  ICSA/NCSA also publishes the monthly "Virus News and
  19. Reviews" and other publications.
  20.  
  21. Another source of information is the documentation of Dr. Solomon's
  22. Anti-Virus ToolKit.  It is more complete than the CVC list, just as
  23. accurate (if not more), but lists only DOS viruses.  However, it is
  24. not available electronically; you must buy his anti-virus package and
  25. the virus information is part of the documentation.
  26.  
  27. Yet another source of information is "Virus News International",
  28. published by S & S International.  And, while not entirely virus-
  29. related, "Computers & Security" provides information on many
  30. aspects of computer security, including viruses.
  31.  
  32. The best source of information available on Apple Macintosh viruses is
  33. the on-line documentation provided with the freeware Disinfectant
  34. program by John Norstad.  This is available at most Mac archive sites.
  35.  
  36.  
  37. A8) Where can I get free or shareware anti-virus programs?
  38.  
  39. The VIRUS-L/comp.virus archive sites carry publicly distributable
  40. anti-virus software products.  See a recent listing of the archive
  41. sites (or ask the moderator for a recent listing) for more information
  42. on these sites.
  43.  
  44. Many freeware/shareware anti-virus programs for DOS are available via
  45. anonymous FTP on WSMR-SIMTEL20.ARMY.MIL (192.88.110.20), in the
  46. directory PD1:<MSDOS.TROJAN-PRO>.  Note that the SIMTEL20 archives
  47. are also "mirrored" at many other anonymous FTP sites, including
  48. oak.oakland.edu (141.210.10.117, pub/msdos/trojan-pro),
  49. wuarchive.wustl.edu (128.252.135.4, /mirrors/msdos/trojan-pro),
  50. and nic.funet.fi (128.214.6.100, /pub/msdos/utilities/trojan-pro).
  51. They can also be obtained via e-mail in uuencoded form from various
  52. TRICKLE sites, especially in Europe.
  53.  
  54. Likewise, Macintosh anti-virus programs can be found on SIMTEL20 in
  55. the PD3:<MACINTOSH.VIRUS> directory.
  56.  
  57. A list of many anti-viral programs, incl. commercial products and one
  58. person's rating of them, can be obtained by anonymous ftp from
  59. cert.org (192.88.209.5) in pub/virus-l/docs/reviews as file
  60. slade.quickref.rvw.
  61.  
  62.  
  63. A9)  Where can I get more information on viruses, etc.?
  64.  
  65. There are four excellent books on computer viruses available that
  66. should cover most of the introductory and technical questions you
  67. might have:
  68.  
  69.     * "Computers Under Attack: Intruders, Worms and Viruses," edited by
  70.    Peter J. Denning, ACM Press/Addison-Wesley, 1990.  This is a book of
  71.    collected readings that discuss computer viruses, computer worms,
  72.    break-ins, legal and social aspects, and many other items related to
  73.    computer security and malicious software.  A very solid, readable
  74.    collection that doesn't require a highly-technical background.
  75.    Price: $20.50.
  76.  
  77.      * "Rogue Programs: Viruses, Worms and Trojan Horses," edited by
  78.    Lance J. Hoffman, Van Nostrand Reinhold, 1990.  This is a book of
  79.    collected readings describing in detail how viruses work, where they
  80.    come from, what they do, etc.  It also has material on worms, trojan
  81.    horse programs, and other malicious software programs.  This book
  82.    focuses more on mechanism and relatively less on social aspects than
  83.    does the Denning book; however, there is an excellent piece by Anne
  84.    Branscomb that covers the legal aspects.  Price: $32.95.
  85.  
  86.      * "A Pathology of Computer Viruses," by David Ferbrache,
  87.    Springer-Verlag, 1992.  This is a recent, in-depth book on the
  88.    history, operation, and effects of computer viruses.  It is one of the
  89.    most complete books on the subject, with an extensive history section,
  90.    a section on Macintosh viruses, network worms, and Unix viruses (if
  91.    they were to exist).
  92.  
  93.      * "A Short Course on Computer Viruses", by Dr. Fred B. Cohen, ASP
  94.    Press, 1990.  This book is by a well-known pioneer in virus research,
  95.    who has also written dozens of technical papers on the subject.  The
  96.    book can be obtained by writing to ASP Press, P.O. Box 81270,
  97.    Pittsburgh, PA 15217.  Price: $24.00.
  98.  
  99. A somewhat dated, but still useful, high-level description of viruses,
  100. suitable for a complete novice without extensive computer background
  101. is in "Computer Viruses: Dealing with Electronic Vandalism and
  102. Programmed Threats," by Eugene H. Spafford, Kathleen A. Heaphy, and
  103. David J. Ferbrache, ADAPSO (Arlington VA), 1989.  ADAPSO is a
  104. computer industry service organization and not a publisher, so the
  105. book cannot be found in bookstores; copies can be obtained directly
  106. from ADAPSO @ +1 703-522-5055).  There is a discount for ADAPSO
  107. members, educators, and law enforcement personnel.  Many people have
  108. indicated they find this a very understandable reference; portions of
  109. it have been reprinted many other places, including Denning &
  110. Hoffman's books (above).
  111.  
  112. It is also worth consulting various publications such as _Computers &
  113. Security_ (which, while not restricted to viruses, contains many of
  114. Cohen's papers) and the _Virus Bulletin_ (published in the UK; its
  115. technical articles are considered good, although there has been much
  116. criticism in VIRUS-L of some of its product evaluations).
  117.  
  118.  
  119. ======================================================
  120. = Section B.   Definitions and General Information   =
  121. ======================================================
  122.  
  123. B1) What are computer viruses (and why should I worry about them)?
  124.  
  125. According to Fred Cohen's well-known definition, a COMPUTER VIRUS is a
  126. computer program that can infect other computer programs by modifying
  127. them in such a way as to include a (possibly evolved) copy of itself.
  128. Note that a program does not have to perform outright damage (such as
  129. deleting or corrupting files) in order to to be called a "virus".
  130. However, Cohen uses the terms within his definition (e.g. "program"
  131. and "modify") a bit differently from the way most anti-virus
  132. researchers use them, and classifies as viruses some things which most
  133. of us would not consider viruses.
  134.  
  135. Many people use the term loosely to cover any sort of program that
  136. tries to hide its (malicious) function and tries to spread onto as
  137. many computers as possible.  (See the definition of "Trojan".)  Be
  138. aware that what constitutes a "program" for a virus to infect may
  139. include a lot more than is at first obvious - don't assume too much
  140. about what a virus can or can't do!
  141.  
  142. These software "pranks" are very serious; they are spreading faster
  143. than they are being stopped, and even the least harmful of viruses
  144. could be fatal.  For example, a virus that stops your computer and
  145. displays a message, in the context of a hospital life-support
  146. computer, could be fatal.  Even those who created the viruses could
  147. not stop them if they wanted to; it requires a concerted effort from
  148. computer users to be "virus-aware", rather than the ignorance and
  149. ambivalence that have allowed them to grow to such a problem.
  150.  
  151.  
  152. B2) What is a Trojan Horse?
  153.  
  154. A TROJAN HORSE is a program that does something undocumented which the
  155. programmer intended, but that the user would not approve of if he knew
  156. about it.  According to some people, a virus is a particular case of a
  157. Trojan Horse, namely one which is able to spread to other programs
  158. (i.e., it turns them into Trojans too).  According to others, a virus
  159. that does not do any deliberate damage (other than merely replicating)
  160. is not a Trojan.  Finally, despite the definitions, many people use
  161. the term "Trojan" to refer only to a *non-replicating* malicious
  162. program, so that the set of Trojans and the set of viruses are
  163. disjoint.
  164.  
  165.  
  166. B3) What are the main types of PC viruses?
  167.  
  168. Generally, there are two main classes of viruses.  The first class
  169. consists of the FILE INFECTORS which attach themselves to ordinary
  170. program files.  These usually infect arbitrary .COM and/or .EXE
  171. programs, though some can infect any program for which execution is
  172. requested, such as .SYS, .OVL, .PRG, & .MNU files.
  173.  
  174. File infectors can be either DIRECT ACTION or RESIDENT.  A direct-
  175. action virus selects one or more other programs to infect each time
  176. the program which contains it is executed.  A resident virus hides
  177. itself somewhere in memory the first time an infected program is
  178. executed, and thereafter infects other programs when *they* are
  179. executed (as in the case of the Jerusalem) or when certain other
  180. conditions are fulfilled.  The Vienna is an example of a direct-action
  181. virus.  Most other viruses are resident.
  182.  
  183. The second category is SYSTEM or BOOT-RECORD INFECTORS: those viruses
  184. which infect executable code found in certain system areas on a disk
  185. which are not ordinary files.   On DOS systems, there are ordinary
  186. boot-sector viruses, which infect only the DOS boot sector, and MBR
  187. viruses which infect the Master Boot Record on fixed disks and the DOS
  188. boot sector on diskettes.  Examples include Brain, Stoned, Empire,
  189. Azusa, and Michelangelo.  Such viruses are always resident viruses.
  190.  
  191. Finally, a few viruses are able to infect both (the Tequila virus is
  192. one example).  These are often called "MULTI-PARTITE" viruses, though
  193. there has been criticism of this name; another name is "BOOT-AND-FILE"
  194. virus.
  195.  
  196. FILE SYSTEM or CLUSTER viruses (e.g. Dir-II) are those which modify
  197. directory table entries so that the virus is loaded and executed
  198. before the desired program is.  Note that the program itself is not
  199. physically altered, only the directory entry is.  Some consider these
  200. infectors to be a third category of viruses, while others consider
  201. them to be a sub-category of the file infectors.
  202.  
  203.  
  204. B4) What is a stealth virus?
  205.  
  206. A STEALTH virus is one which hides the modifications it has made in
  207. the file or boot record, usually by monitoring the system functions
  208. used by programs to read files or physical blocks from storage media,
  209. and forging the results of such system functions so that programs
  210. which try to read these areas see the original uninfected form of the
  211. file instead of the actual infected form. Thus the viral modifications
  212. go undetected by anti-viral programs.  However, in order to do this,
  213. the virus must be resident in memory when the anti-viral program is
  214. executed.
  215.  
  216. Example: The very first DOS virus, Brain, a boot-sector infector,
  217. monitors physical disk I/O and re-directs any attempt to read a
  218. Brain-infected boot sector to the disk area where the original boot
  219. sector is stored.  The next viruses to use this technique were the
  220. file infectors Number of the Beast and Frodo (= 4096 = 4K).
  221.  
  222. Countermeasures: A "clean" system is needed so that no virus is
  223. present to distort the results.  Thus the system should be built from
  224. a trusted, clean master copy before any virus-checking is attempted;
  225. this is "The Golden Rule of the Trade."  With DOS, (1) boot from
  226. original DOS diskettes (i.e. DOS Startup/Program diskettes from a
  227. major vendor that have been write-protected since their creation);
  228. (2) use only tools from original diskettes until virus-checking has
  229. completed.
  230.  
  231.  
  232. B5) What is a polymorphic virus?
  233.  
  234. A POLYMORPHIC virus is one which produces varied (yet fully
  235. operational) copies of itself, in the hope that virus scanners (see
  236. D1) will not be able to detect all instances of the virus.
  237.  
  238. One method to evade signature-driven virus scanners is self-encryption
  239. with a variable key; however these viruses (e.g. Cascade) are not
  240. termed "polymorphic," as their decryption code is always the same and
  241. thus can be used as a virus signature even by the simplest, signature-
  242. driven virus scanners (unless another virus or program uses the
  243. identical decryption routine).
  244.  
  245. One method to make a polymorphic virus is to choose among a variety of
  246. different encryption schemes requiring different decryption routines:
  247. only one of these routines would be plainly visible in any instance of
  248. the virus (e.g. the Whale virus).  A signature-driven virus scanner
  249. would have to exploit several signatures (one for each possible
  250. encryption method) to reliably identify a virus of this kind.
  251.  
  252. A more sophisticated polymorphic virus (e.g. V2P6) will vary the
  253. sequence of instructions in its copies by interspersing it with
  254. "noise" instructions (e.g. a No Operation instruction, or an
  255. instruction to load a currently unused register with an arbitrary
  256. value), by interchanging mutually independent instructions, or even by
  257. using various instruction sequences with identical net effects (e.g.
  258. Subtract A from A, and Move 0 to A).  A simple-minded, signature-based
  259. virus scanner would not be able to reliably identify this sort of
  260. virus; rather, a sophisticated "scanning engine" has to be constructed
  261. after thorough research into the particular virus.
  262.  
  263. The most sophisticated form of polymorphism discovered so far is the
  264. MtE "Mutation Engine" written by the Bulgarian virus writer who calls
  265. himself the "Dark Avenger".  It comes in the form of an object module.
  266. Any virus can be made polymorphic by adding certain calls to the
  267. assembler source code and linking to the mutation-engine and
  268. random-number-generator modules.
  269.  
  270. The advent of polymorphic viruses has rendered virus-scanning an ever
  271. more difficult and expensive endeavor; adding more and more search
  272. strings to simple scanners will not adequately deal with these
  273. viruses.
  274.  
  275.  
  276. B6) What are fast and slow infectors?
  277.  
  278. A typical file infector (such as the Jerusalem) copies itself to
  279. memory when a program infected by it is executed, and then infects
  280. other programs when they are executed.
  281.  
  282. A FAST infector is a virus which, when it is active in memory, infects
  283. not only programs which are executed, but even those which are merely
  284. opened.  The result is that if such a virus is in memory, running a
  285. scanner or integrity checker can result in all (or at least many)
  286. programs becoming infected all at once.  Examples are the Dark Avenger
  287. and the Frodo viruses.
  288.  
  289. The term "SLOW infector" is sometimes used for a virus which, if it is
  290. active in memory, infects only files as they are modified (or
  291. created).  The purpose is to fool people who use integrity checkers
  292. into thinking that the modification reported by the integrity checker
  293. is due solely to legitimate reasons.  An example is the Darth Vader
  294. virus.
  295.  
  296.  
  297. B7) What is a sparse infector?
  298.  
  299. The term "SPARSE infector" is sometimes given to a virus which
  300. infects only occasionally, e.g. every 10th executed file, or only
  301. files whose lengths fall within a narrow range, etc.  By infecting
  302. less often, such viruses try to minimize the probability of being
  303. discovered by the user.
  304.  
  305.  
  306. B8) What is a companion virus?
  307.  
  308. A COMPANION virus is one which, instead of modifying an existing file,
  309. creates a new program which (unknown to the user) gets executed by the
  310. command-line interpreter instead of the intended program.  (On exit,
  311. the new program executes the original program so that things will
  312. appear normal.)  The only way this has been done so far is by creating
  313. an infected .COM file with the same name as an existing .EXE file.
  314. Note that those integrity checkers which look only for *modifications*
  315. in *existing* files will fail to detect such viruses.
  316.  
  317. (Note that not all researchers consider this type of malicious code
  318. to be a virus, since it does not modify existing files.)
  319.  
  320.  
  321. B9) What is an armored virus?
  322.  
  323. An ARMORED virus is one which uses special tricks to make the tracing,
  324. disassembling and understanding of their code more difficult.  A good
  325. example is the Whale virus.
  326.  
  327.  
  328. B10) Miscellaneous Jargon and Abbreviations
  329.  
  330. BSI = Boot Sector Infector: a virus which takes control when the
  331.  computer attempts to boot (as opposed to a file infector).
  332.  
  333. CMOS = Complementary Metal Oxide Semiconductor: A memory area that is
  334.  used in AT and higher class PCs for storage of system information.
  335.  CMOS is battery backed RAM (see below), originally used to maintain
  336.  date and time information while the PC was turned off.  CMOS memory
  337.  is not in the normal CPU address space and cannot be executed.  While
  338.  a virus may place data in the CMOS or may corrupt it, a virus cannot
  339.  hide there.
  340.  
  341. DOS = Disk Operating System.  We use the term "DOS" to mean any of the
  342.  MS-DOS, PC-DOS, or DR DOS systems for PCs and compatibles, even
  343.  though there are operating systems called "DOS" on other (unrelated)
  344.  machines.
  345.  
  346. MBR = Master Boot Record: the first Absolute sector (track 0, head 0,
  347.  sector 1) on a PC hard disk, that usually contains the partition table
  348.  (but on some PCs may simply contain a boot sector).  This is not the
  349.  same as the first DOS sector (Logical sector 0).
  350.  
  351. RAM = Random Access Memory: the place programs are loaded into in
  352.  order to execute; the significance for viruses is that, to be active,
  353.  they must grab some of this for themselves.  However, some virus
  354.  scanners may declare that a virus is active simply when it is found
  355.  in RAM, even though it might be simply left over in a buffer area of
  356.  RAM rather than truly being active.
  357.  
  358. TOM = Top Of Memory: the end of conventional memory, an architectural
  359.  design limit at the 640K mark on most PCs.  Some early PCs may not
  360.  be fully populated, but the amount of memory is always a multiple of
  361.  64K.  A boot-record virus on a PC typically resides just below this
  362.  mark and changes the value which will be reported for the TOM to the
  363.  location of the beginning of the virus so that it won't get
  364.  overwritten.  Checking this value for changes can help detect a
  365.  virus, but there are also legitimate reasons why it may change (see
  366.  C11).  A very few PCs with unusual memory managers/settings may
  367.  report in excess of 640K.
  368.  
  369. TSR = Terminate but Stay Resident: these are PC programs that stay in
  370.  memory while you continue to use the computer for other purposes;
  371.  they include pop-up utilities, network software, and the great
  372.  majority of viruses.  These can often be seen using utilities such as
  373.  MEM, MAPMEM, PMAP, F-MMAP and INFOPLUS.
  374.  
  375.  
  376. =================================
  377. = Section C.    Virus Detection =
  378. =================================
  379.  
  380. C1)  What are the symptoms and indications of a virus infection?
  381.  
  382. Viruses try to spread as much as possible before they deliver their
  383. "payload", but there can be symptoms of virus infection before this,
  384. and it is important to use this opportunity to spot and eradicate the
  385. virus before any destruction.
  386.  
  387. There are various kinds of symptoms which some virus authors have
  388. written into their programs, such as messages, music and graphical
  389. displays.  However, the main indications are changes in file sizes and
  390. contents, changing of interrupt vectors or the reassignment of other
  391. system resources.  The unaccounted use of RAM or a reduction in the
  392. amount known to be in the machine are important indicators.  The
  393. examination of the code is valuable to the trained eye, but even the
  394. novice can often spot the gross differences between a valid boot
  395. sector and an infected one.  However, these symptoms, along with
  396. longer disk activity and strange behavior from the hardware, can also
  397. be caused by genuine software, by harmless "prank" programs, or by
  398. hardware faults.
  399.  
  400. The only foolproof way to determine that a virus is present is for an
  401. expert to analyze the assembly code contained in all programs and
  402. system areas, but this is usually impracticable.  Virus scanners go
  403. some way towards that by looking in that code for known viruses; some
  404. will even try to use heuristic means to spot viral code, but this is
  405. not always reliable.  It is wise to arm yourself with the latest
  406. anti-viral software, but also to pay close attention to your system;
  407. look particularly for any change in the memory map or configuration as
  408. soon as you start the computer.  For users of DOS 5.0, the MEM program
  409. with the /C switch is very handy for this.  If you have DRDOS, use MEM
  410. with the /A switch; if you have an earlier version, use CHKDSK or the
  411. commonly-available PMAP or MAPMEM utilities.  You don't have to know
  412. what all the numbers mean, only that they change.  Mac users have
  413. "info" options that give some indication of memory use, but may need
  414. ResEdit for more detail.
  415.  
  416.  
  417. C2)  What steps should be taken in diagnosing and identifying viruses?
  418.  
  419. Most of the time, a virus scanner program will take care of that for
  420. you.  (Remember, though, that scanning programs must be kept up to
  421. date.  Also remember that different scanner authors may call the same
  422. virus by different names.  If you want to identify a virus in order to
  423. ask for help, it is best to run at least two scanners on it and, when
  424. asking, say which scanners, and what versions, gave the names.)  To
  425. help identify problems early, run it on new programs and diskettes;
  426. when an integrity checker reports a mismatch, when a generic
  427. monitoring program sounds an alarm; or when you receive an updated
  428. version of a scanner (or a different scanner than the one you have
  429. been using).  However, because of the time required, it is not
  430. generally advisable to insert into your AUTOEXEC.BAT file a command to
  431. run a scanner on an entire hard disk on every boot.
  432.  
  433. If you run into an alarm that the scanner doesn't identify, or
  434. doesn't properly clean up for you, first verify that the version that
  435. you are using is the most recent, and then get in touch with one of
  436. the reputable antivirus researchers, who may ask you to send a copy
  437. of the infected file to him.  See also question C10.
  438.  
  439.  
  440. C3) What is the best way to remove a virus?
  441.  
  442. In order that downtime be short and losses low, do the minimum that
  443. you must to restore the system to a normal state, starting with
  444. booting the system from a clean diskette.  It is very unlikely that
  445. you need to low-level reformat the hard disk!
  446.  
  447. If backups of the infected files are available and appropriate care
  448. was taken when making the backups (see D10), this is the safest
  449. solution, even though it requires a lot of work if many files are
  450. involved.
  451.  
  452. More commonly, a disinfecting program is used.  If the virus is a boot
  453. sector infector, you can continue using the computer with relative
  454. safety if you boot it from a clean system diskette, but it is wise to
  455. go through all your diskettes removing infection, since sooner or
  456. later you may be careless and leave a diskette in the machine when it
  457. reboots.  Boot sector infections on PCs can be cured by a two-step
  458. approach of replacing the MBR (on the hard disk), either by using a
  459. backup or by the FDISK/MBR command (from DOS 5 and up), then using the
  460. SYS command to replace the DOS boot sector.
  461.  
  462.  
  463. C4) What does the <insert name here> virus do?
  464.  
  465. If an anti-virus program has detected a virus on your computer, don't
  466. rush to post a question to this list asking what it does.  First, it
  467. might be a false positive alert (especially if the virus is found only
  468. in one file), and second, some viruses are extremely common, so the
  469. question "What does the Stoned virus do?" or "What does the Jerusalem
  470. virus do?" is asked here repeatedly.  While this list is monitored by
  471. several anti-virus experts, they get tired of perpetually answering
  472. the same questions over and over again.  In any case, if you really
  473. need to know what a particular virus does (as opposed to knowing
  474. enough to get rid of it), you will need a longer treatise than could
  475. be given to you here.
  476.  
  477. For example, the Stoned virus replaces the disk's boot record with its
  478. own, relocating the original to a sector on the disk that may (or may
  479. not) occur in an unused portion of the root directory of a DOS
  480. diskette; when active, it sits in an area a few kilobytes below the
  481. top of memory.  All this description could apply to a number of common
  482. viruses; but the important points of where the original boot sector
  483. goes - and what effect that has on networking software, non-DOS
  484. partitions, and so on are all major questions in themselves.
  485.  
  486. Therefore, it is better if you first try to answer your question
  487. yourself.  There are several sources of information about the known
  488. computer viruses, so please consult one of them before requesting
  489. information publicly.  Chances are that your virus is rather well known
  490. and that it is already described in detail in at least one of these
  491. sources.  (See the answer to question A7, for instance.)
  492.  
  493.  
  494. C5) What are "false positives" and "false negatives"?
  495.  
  496. A FALSE POSITIVE (or Type-I) error is one in which the anti-viral
  497. software claims that a given file is infected by a virus when in
  498. reality the file is clean.  A FALSE NEGATIVE (or Type-II) error is one
  499. in which the software fails to indicate that an infected file is
  500. infected.  Clearly false negatives are more serious than false
  501. positives, although both are undesirable.
  502.  
  503. It has been proven by Dr. Fred Cohen that every virus detector must
  504. have either false positives or false negatives or both.  This is
  505. expressed by saying that detection of viruses is UNDECIDABLE.
  506. However his theorem does not preclude a program which has no false
  507. negatives and *very few* false positives (e.g. if the only false
  508. positives are those due to the file containing viral code which is
  509. never actually executed, so that technically we do not have a virus).
  510.  
  511. In the case of virus scanners, false positives are rare, but they can
  512. arise if the scan string chosen for a given virus is also present in
  513. some benign programs because the string was not well chosen.  False
  514. negatives are more common with virus scanners because scanners will
  515. miss a completely new or a heavily modified virus.
  516.  
  517. One other serious problem could occur: A positive that is misdiagnosed
  518. (e.g., a scanner that detects the Empire virus in a boot record but
  519. reports it as the Stoned).  In the case of a boot sector infector, use
  520. of a Stoned specific "cure" to recover from the Empire could result in
  521. an unreadable disk or loss of extended partitions.  Similarly,
  522. sometimes "generic" recovery can result in unusable files, unless a
  523. check is made (e.g. by comparing checksums) that the recovered file is
  524. identical to the original file.  Some more recent products store
  525. information about the original programs to allow verification of
  526. recovery processes.
  527.  
  528.  
  529. C6) Could an anti-viral program itself be infected?
  530.  
  531. Yes, so it is important to obtain this software from good sources, and
  532. to trust results only after running scanners from a "clean" system.
  533. But there are situations where a scanner appears to be infected when
  534. it isn't.
  535.  
  536. Most antiviral programs try very hard to identify only viral
  537. infections, but sometimes they give false alarms.  If two different
  538. antiviral programs are both of the "scanner" type, they will contain
  539. "signature strings" to identify viral infections.  If the strings are
  540. not "encrypted", then they will be identified as a virus by another
  541. scanner type program.  Also, if the scanner does not remove the
  542. strings from memory after they are run, then another scanner may
  543. detect the virus string "in memory".
  544.  
  545. Some "change detection" type antiviral programs add a bit of code or
  546. data to a program when "protecting" it.  This might be detected by
  547. another "change detector" as a change to a program, and therefore
  548. suspicious.
  549.  
  550. It is good practice to use more than one antiviral program.  Do be
  551. aware, however, that antiviral programs, by their nature, may confuse
  552. each other.
  553.  
  554.  
  555. C7) Where can I get a virus scanner for my Unix system?
  556.  
  557. Basically, you shouldn't bother scanning for Unix viruses at this
  558. point in time.  Although it is possible to write Unix-based viruses,
  559. we have yet to see any instance of a non-experimental virus in that
  560. environment.  Someone with sufficient knowledge and access to write an
  561. effective virus would be more likely to conduct other activities than
  562. virus-writing.  Furthermore, the typical form of software sharing in
  563. an Unix environment would not support virus spread.
  564.  
  565. This answer is not meant to imply that viruses are impossible, or that
  566. there aren't security problems in a typical Unix environment -- there
  567. are.  However, true viruses are highly unlikely and would corrupt file
  568. and/or memory integrity.  For more information on Unix security, see
  569. the book "Practical Unix Security" by Garfinkel and Spafford, O'Reilly
  570. & Associates, 1991 (it can be ordered via e-mail from nuts@ora.com).
  571.